VolumeCellOperator Operator 

image102.gif

This operator represents a new "breed" of operators, along with VolumeActivate, in thinkingParticles - enhancing the overall way of how thinkingParticles works internally. For the first time it is possible within thinkingParticles to reach and feed another operator with data across DynamicSets!

In this special case, the VolumeCell operator is able to replace and overwrite the volume cell data of any VolumeBreak operator in a thinkingParticles setup which makes it possible to supply multiple "cell points" to one VolumeBreak operator for example.

In simple terms, this operator allows you to control when, where and how a particle is fragmented when involved with a VolumeBreak operator. Note that this operator requires the existence of a VolumeBreak operator, and is used to tell that VolumeBreak operator where to activate the VB fragments (via the Position input), how "far" into that particle shape volume to activate (via Initial Length), how fast to activate to that length (via Spreading Second), as well as what Position Type (World, Object, Normalized).

Operator Inputs 

ON - (Bool) This input data stream determines whether the operator is considered 'on' or 'off.' You can connect other operators to this input channel such as a Bool Helper to activate/deactivate the whole operator.

Time
- (Time) This input data stream is used to define the local time for the operator when the user wants to override the default system time.

Particle
- inputs the particle ID of the particle group with a volumeBreak operator applied.

Position
- sets the breaking position for a specific volumeBreak operator, the position can either be set in World Space, Object Space or Normalized to the bounding box of the object.

Position Type
- sets the way the position is supplied. It can be either of the below options:

0 = World
1 = Object
3 = Normalized
 
 
Operator Outputs

This operator has no outputs.

Rollout Menus
 

image103.gif

VolumeBreak
- sets the VolumeBreak operator that should be affected by this VolumeActivate. The drop down menu lists all available VolumeBreak operators so make sure the right one is selected.

Input Position
- defines the format of the Position that is supplied to this operator. As shown below, several options exist.

image103.gif
Feeding in a start position to this operator can be done in multiple formats.

The position may be supplied as world space X,Y,Z values or they may be in object space or even normalized to a 1,1,1 box relative to the object.

 

It is important to understand that VolumeCell is meant to create the actual Voronoi cell centers for the VolumeBreak operator. A multitude of cells is needed to create natural looking demolition sequences of 3D objects. There are multiple ways to supply those points in space for this operator, you may feed in a whole Particle Group with its particle data or you create an Iterator setup that creates multiple points in space.

The illustration shown below explains one possible setup to create volume cells with the Iterator operator.

image103.gif

Explanation

 

The setup as shown above is triggered on the "Born" (through Particle Age) of a particle. This activates the Iterator and for as many loops (iterations), as set in the operator itself, X,Y,Z positions will be created based on the Surface Position of the born (source) particle. In this example, the Position Born operator is only used to visualize
the positions of the cell centers (in this case they are on a 2D plane).